1. Field of the Invention
The present invention relates in general to the field of monitoring system resources, and in particular to methods and systems for monitoring system resources in real-time in an object-oriented environment.
2. Description of Related Art
With increasing complexity of administering computer systems today, it is desirable to detect changes in system states of a complex computer system in real-time and log the changes. System state is defined as a run-time state of system resources at a particular instant in time.
The resources of a computer system that may be of interest at run-time are its hardware, file systems, processes running on the system and its registry. The term hardware of a computer system refers to objects that are tangible such as disks, disk drives, display screens, keyboards, printers, boards, and chips. File subsystem refers to a system that an operating system or a program uses to organize and keep track of files. For example, a hierarchical file subsystem is one that uses directories to organize files into a tree structure. A process is a program being executed by a computer system and the term is also used as a synonym for a task. A process performs some useful operations on data. Typically, an operating system is capable of running several processes at the same time. Hence, at any given time there could be one or more processes running on a computer system. A registry is a database used by an operating system to store configuration information. For Windows operating system, the Registry comprises the following major sections:                HKEY_Classes_Root—file associations and OLE information        HKEY_Current_User—all preferences set for current user        HKEY_User—all the current user information for each user of the system        HKEY_Local_Machine—settings for hardware, operating system, and installed applications        HKEY_Current_Configuration—settings for the display and printers        
Most Windows applications write data to the Registry, at least during installation. A registry can be edited directly by using the Registry Editor provided with the operating system. However, great care must be taken during editing the Registry because errors in the Registry could disable a computer system.
Changes to any of these components can result in a change in system state.
As the Windows NT operating system is increasingly becoming an enterprise wide operating system, a larger number of system administrators need methods that can held them diagnose and solve problems in a shorter period of time. In particular, there is a need for a method that can monitor in real-time specified resources of a computer system.